#-*- coding: utf-8 -*-
'''
@author: Sandro Sousa
@date: 28 de Outubro de 2013
@obs:29 de Outubro de 2013
criado envio de valor para criterio de paragem 
de preenchimento de db no return de getrecord
xls
'''

import xlrd
import managedb


def testempty(value):
    '''
    Change empty sheet to '0'
    '''
    func = lambda x: x if x != '' else 0
    return func(value)

def getrecord(sheetname, row):
    '''
    Reads the information from the respective fields
    '''  
    codigoInstituicao = sheetname.cell(row, 0).value
    create_record = managedb.Students_data(line_id=row, 
        codigoInstituicao = codigoInstituicao, 
        codigoCurso = sheetname.cell(row, 1).value,
        nomeInstituicao = sheetname.cell(row, 2).value,
        nomeCurso = sheetname.cell(row, 3).value,
        grau = sheetname.cell(row, 4).value,
        vagasIniciais = testempty(sheetname.cell(row, 5).value),
        colocados = testempty(sheetname.cell(row, 6).value),
        notaCandidatura = testempty(sheetname.cell(row, 7).value),
        vagasSobrantes = testempty(sheetname.cell(row, 8).value))
    return create_record, codigoInstituicao
